//对象 -> 原型对象　-> 原型链　　　＝＝＝　　　家谱
// body　家谱（原型链）

// let body = document.getElementsByTagName('body').item(0)
// const body = document.querySelector('body')

// function getProto(obj){
// }
// getProto();
// 3*2*1
// 3* 2* 1
function sum(num) {
  if (num == 1) return 1
  return num * sum(num - 1)
}

// let res = sum(5)
// console.log(res)

// function sum(array) {
//   return array.reduce((sum, value) => sum + value)
// }

// function sum(arr) {
//   //   let total = 0
//   //   if (arr.length == 0) return 0
//   //   total = arr.shift() + (arr.shift() || 0)
//   //   return total + sum(arr)
//   let total = 0
//   return arr.map((value) => (total += value)).sort((a, b) => b - a)[0]
//   //   console.log(a)

//   return total
// }

// function sum(arr) {
// return arr[0]
// }

// let a = 1
// let b = a

// b = 'yahoo'
// console.log(a)

// let a = [1, 2, 3, { name: 'yahoo' }]

// let b = []
// for (const v of a) {
//   b.push(v)
// }

// //浅拷贝
// // let b = a.slice(0)  tom:1  yahoo 2
// b[3].name = 'tom'
// console.log(b)
// console.log(a)

//push pop   unshift shift
// let a = [1, 2, 3]
// a.unshift('tom')
// console.log(a)

// let a = [1, 2, 3, { name: 'yahoo' }]

// let b = [...a]

// b[3].name = 0
// console.log(b)

// console.log(a)

// 1+ sum([2,3])
// 2+ sum([3])
// 3+0
// 0
function sum(arr) {
  if (arr.length == 0) return 0
  return arr[0] + sum(arr.slice(1))
}

let a = [1, 2, 3]
console.log(sum(a))

console.log(a)
